对多个因变量进行回归分析

作者:Ruben Geert van den Berg,隶属于 SPSS Python 基础

“我有一个数据文件,我希望在上面进行几个回归分析。我有四个因变量,v1 到 v4。自变量(v5 到 v14)对于所有分析都是相同的。如何以高效的方式执行这四个分析,并且这种方式也适用于 100 个因变量?”

SPSS Python 语法示例

***对不同的因变量重复运行 REGRESSION(回归)命令。***
**
begin program.
import spss,spssaux
dependent = 'v1 to v4'  # 因变量。
spssSyntax = ''  # 创建一个空的 Python 字符串,我们将 SPSS REGRESSION(回归)命令添加到其中
depList = spssaux.VariableDict(caseless = True).expand(dependent)  # 创建包含变量名称的 Python 列表
for dep in depList:  # "+=" (如下所示) 将 SPSS REGRESSION(回归)命令连接到 spssSyntax
    spssSyntax += '''
REGRESSION
/MISSING PAIRWISE
/STATISTICS COEFF OUTS R ANOVA
/CRITERIA=PIN(.05) POUT(.10)
/NOORIGIN
/DEPENDENT %s
/METHOD=STEPWISE v5 to v14.
'''%dep  # 将语法中的 "%s" 替换为因变量
print spssSyntax  # 将 REGRESSION(回归)命令打印到 SPSS 输出窗口
end program.

***如果 REGRESSION(回归)命令看起来没问题,让 SPSS 运行它们。***
**
begin program.
spss.Submit(spssSyntax)
end program.

描述

  • 此语法使用 Python,因此你需要安装 SPSS Python Essentials 才能运行它;
  • 此语法将简单地对不同的因变量逐个运行标准的 SPSS 回归分析
  • 除了 %s 的出现之外,Python 将向 SPSS 提交一个通过 GUI 生成的教科书式的回归语法示例。可以根据需要进行修改。
  • TO 和 ALL 关键字可以用于指定因变量和自变量。整个规范都包含在引号中。
  • 作为此解决方案的测试文件,你可以使用 supermarket.sav